#include "Int_Bluetooth.h"
#include "Int_OLED_Data.h"
#include "Int_OLED.h"

/**
 * @brief 初始化,蓝牙
 *
 */
void Int_Bluetooth_Init()
{
    Dri_UART_Init();
}

/**
 * @brief 发送字符串数据
 *
 * @param str 字符串数据
 */
void Int_Bluetooth_Transmit_String(u8 *str)
{
    Dri_UART_Transmit_String(str);
}

/**
 * @brief 接收单字符数据
 *
 * @param bitData 单字符数据
 * @return bit 接收数据成功 1==成功, 0 == 失败
 */
bit Int_Bluetooth_Reception_Char(u8 *bitData)
{
    return Dri_UART_Reception_Byte(bitData);
}

/**
 * @brief 接收字符串数据
 *
 * @param str 字符串
 * @return bit  bit 接收数据成功 1==成功, 0 == 失败
 */
bit Int_Bluetooth_Reception_Str(u8 *str)
{
    return Dri_UART_Reception_String(str);
}

/**
 * @brief 修改名字
 *
 * @param name
 */
void Int_Bluetooth_Update_Name()
{
    Int_Bluetooth_Transmit_String("AT+NAME=yuhf123_51_car");
}

// 接收返回状态
static bit isOk         = 0;
static u16 is_wile_count = 5000;
static u8 str[20];

/**
 * @brief 查询名字
 *
 */
void Int_Bluetooth_find_Name()
{

    Int_Bluetooth_Transmit_String("AT+NAME?");

    // 蓝牙会把刚才你发送的再发送给你一次
    isOk = Int_Bluetooth_Reception_Str(str);
    while (isOk = 0 || is_wile_count == 0) {
        is_wile_count--;
    };

    // 自己的名字
    isOk          = Int_Bluetooth_Reception_Str(str);
    is_wile_count = 1000;
    while (isOk = 0 || is_wile_count == 0) {
        is_wile_count--;
    };
}